	/* 
	 * JTable mensajes para la solicitud seleccionada
	 */
	$(document).ready(function() {              
	    //setup the jtable that will display the results
	    $('#TablaListaMensajes').jtable({
	        title: 'Lista de mensajes',
	        selecting: false, //Enable selecting 
	        paging: false, //Enable paging
	        pageSize: 10, //Set page size (default: 10)
	        sorting: false, //Enable sorting
	        actions: {
	        	//Estos links no van a funcionar en el servidor de prueba por hacer referencia a una ruta absoluta que no puede partir de cardiorunning
	        	//O funciona en pruebas o en real
	        	listAction: '/private/mensajeria/mensajesporsol',
                createAction: '/private/mensajeria/crearmensaje?solicitudid=' + $('#solicitudid').val(),
	            updateAction: '/private/mensajeria/respuesta?solicitudid=' + $('#solicitudid').val(),
	            viewAction: 'true',
	        },
	        fields: {
	        	Mensajeid: {
	                key: true,
	                edit:false,
	                view:true,
	                visibility: 'hidden',
	            },
	            Imagen: {
	                title: '',
	                width: '5%',
                    create: false,
                    edit: false,
                    list: true,
                    view:false,
                    display: function(data){
                    	if (data.record.Imagen==1){
                    		return '<img src="/plantilla/images/email_abierto.png" width="32" height="32" class="preview">';
                    	}else if(data.record.Imagen==2){
                    		return '<img src="/plantilla/images/email_cerrado.png" width="32" height="32" class="preview">';
                    	}else if(data.record.Imagen==3){
                    		return '<img src="/plantilla/images/email_enviado.png" width="32" height="32" class="preview">';
                    	}else{
                    		return '<img src="/plantilla/images/email_respond.png" width="32" height="32" class="preview">';
                    	}
                    }
	            },	
	            Fenvio: {
	                title: 'Fecha',
	                width: '30%',
                    create: false,
                    edit: true,
                    list: true,
                    view:true
	            },	            
	            Asunto: {
	                title: 'Asunto',
	                width: '65%',
                    create: true,
                    edit: true,
                    list: true,
                    view:true,
                    display: function(data){
                    	
                    	if (data.record.Asunto.length>25){
                    		var str = data.record.Asunto;
                    		return str.substring(0, 25)+ '...';
                    	}else{
                    		return data.record.Asunto;
                    	}
                    	
                    }
	            },
	            Texto: {
	                title: 'Texto',
	                type: 'textarea',
	                inputClass : 'validate[required]',
                    create: true,
                    edit: true,
                    list: false,
                    view: true
	            },
	            Fleido: {
                    create: false,
                    edit: false,
                    list: false,
                    view: false
	            },
	        	Solicitudid: {
                    create: false,
                    edit: false,
                    list: false,
                    view: false
	            },
	            
	        },
	        

            formCreated: function (event, data) {
            	//Cuando se edita un mensaje, se posibilita la respuesta a uno ya creado, por
            	//lo que se cambian las propiedades de los objetos del mensaje
            	if(data.formType=='edit'){
            		
            		$("span.ui-dialog-title").text('Mensaje de respuesta'); 
            		
            		//Fecha de envío
            		$('#Edit-Fenvio').prop('disabled', true);
            		$('#Edit-Fenvio').css('background-color', 'white');
            		$('#Edit-Fenvio').css('color', 'black');
            		$('#Edit-Fenvio').css('border', 'none');
            		
            		//Asunto
            		$('#Edit-Asunto').prop('disabled', true);
            		$('#Edit-Asunto').css('background-color', 'white');
            		$('#Edit-Asunto').css('color', 'black');
            		$('#Edit-Asunto').css('border', 'none');

            		//Textarea del mensaje enviado. Cambiamos id para no enviarlo al servidor y utilizamos su identificador en el clone
            		$('#Edit-Texto').attr('id','Edit-Texto-readonly');
                    $('#Edit-Texto-readonly').css('height', '100px');
                    $('#Edit-Texto-readonly').attr("maxlength","1500");
                    
                    //Añadimos el título respuesta
                    $('#Edit-Texto-readonly').after("<div class='jtable-input-field-container'><div class='jtable-input-label'>Respuesta</div><div id='respuesta' class='jtable-input jtable-textarea-input'></div></div>");
                    
                    //Añadimos el textarea de respuesta
                    $('#Edit-Texto-readonly')
                    .clone()
                    .attr('id', '#Edit-Texto')
                    .appendTo($('#respuesta'));

                    //Cambiamos propiedades del textarea de origen para evitar su edición
                    $('#Edit-Texto-readonly').css('background-color', '#F5F5F5');
                    $('#Edit-Texto-readonly').prop('disabled', true);

                   
            	}
                data.form.validationEngine();

            },
            //Validate form when it is being submitted
            formSubmitting: function (event, data) {
                if (data.form.validationEngine('validate')==true){
	                if (data.formType=='edit'){
		           		var key = data.row.closest('tr').attr('data-record-key');
			           //Si el sobre está cerrado, quiere decir que no ha sido leido. Llamamos a la función que cambia el estado de leido en la tabla recibidos
			           if (data.row.find('.preview').attr('src')=='plantilla/images/email_cerrado.png'){	           
			               $.post("private/mensajeria/leido", "Mensajeid="+key, "json");
		            	}         
		           	}
                }else{
                	return data.form.validationEngine('validate');
                }
            	
            },
            //Dispose validation logic when form is closed
            formClosed: function (event, data) {
            	
	           data.form.validationEngine('hide');
	           data.form.validationEngine('detach');
	           
	           //Obtenemos la clave de la línea editada
	           if (data.formType=='view'){
	           		var key = data.row.closest('tr').attr('data-record-key');
		           //Si el sobre está cerrado, quiere decir que no ha sido leido. Llamamos a la función que cambia el estado de leido en la tabla recibidos
		           if (data.row.find('.preview').attr('src')=='plantilla/images/email_cerrado.png'){	           
		               $.post("private/mensajeria/leido", "Mensajeid="+key,
		           		   
			    	       function(results)
			    	       {
			                    	data.row.find('.preview').attr('src','plantilla/images/email_abierto.png');
			    	       }
			    	       , "json");
	            	}         
	           	}
            },
	        //Register to selectionChanged event to handle events                                     
	        recordAdded: function(event, data){
	            //after record insertion, reload the records
	    	    $('#TablaListaMensajes').jtable('load', {
	    	    	solicitudid: $('#solicitudid').val()
	            });      
	        },
	        recordUpdated: function(event, data){
	            //after record updation, reload the records
	    	    $('#TablaListaMensajes').jtable('load', {
	    	    	solicitudid: $('#solicitudid').val()
	            });      
	        },
	        //Oculta el icono de editar cuando se trata de un mensaje creado por la persona logeada
	        recordsLoaded: function(event, data) {
	        	
	        	if  ($('#situacionid').val()!="5" && $('#role').val()=="ROLE_USER"){
	        		($("span.jtable-toolbar-item-add-record")).hide();
	        	}
	        	
		        for(var i = 0;i<data.records.length;i++){
	        		$row = $('#TablaListaMensajes').jtable('getRowByKey', data.records[i].Mensajeid);
		        	$row.find('.jtable-edit-command-button').css('background', 'url("/plantilla/images/email_respond16.png") no-repeat scroll 0% 0% transparent');
		        	$row.find('.jtable-edit-command-button').prop('title', 'Responder');
		        	if (data.records[i].Responder==false){
	        		   $row.find('.jtable-edit-command-button').hide();
		        	}
		        }
	        },
	        loadingRecords: function(event, data){
	        	if  ($('#situacionid')!="5"){
	        		($("#span1").find('.jtable-add-record')).hide();
	        	}
	        },
	    });
	    $('#TablaListaMensajes').jtable('load', {
	    	solicitudid: $('#solicitudid').val()
        });            
	                
	});
	 